home *** CD-ROM | disk | FTP | other *** search
- import java.io.IOException;
- import java.io.Reader;
- import java.util.Hashtable;
-
- // $FF: renamed from: r
- public class class_0 {
- // $FF: renamed from: l int
- public static final int field_0 = 0;
- // $FF: renamed from: g int
- public static final int field_1 = 1;
- // $FF: renamed from: k int
- public static final int field_2 = 2;
- // $FF: renamed from: byte int
- public static final int field_3 = 3;
- // $FF: renamed from: o int
- public static final int field_4 = 4;
- // $FF: renamed from: for int
- static final int field_5 = 5;
- // $FF: renamed from: j int
- static final int field_6 = 6;
- // $FF: renamed from: i java.lang.String
- private static final String field_7 = "Unexpected EOF";
- // $FF: renamed from: try int
- private static final int field_8 = 999;
- // $FF: renamed from: char boolean
- private boolean field_9;
- // $FF: renamed from: else java.util.Hashtable
- private Hashtable field_10;
- // $FF: renamed from: q int
- private int field_11;
- // $FF: renamed from: h java.lang.String[]
- private String[] field_12 = new String[4];
- // $FF: renamed from: if java.io.Reader
- private Reader field_13;
- // $FF: renamed from: void char[]
- private char[] field_14 = new char[Runtime.getRuntime().freeMemory() >= 1048576L ? 8192 : 128];
- // $FF: renamed from: n int
- private int field_15;
- // $FF: renamed from: goto int
- private int field_16;
- // $FF: renamed from: e boolean
- private boolean field_17;
- // $FF: renamed from: d int
- private int field_18;
- // $FF: renamed from: int int
- private int field_19;
- // $FF: renamed from: c int
- private int field_20;
- // $FF: renamed from: b int
- private int field_21;
- // $FF: renamed from: m char[]
- private char[] field_22 = new char[128];
- // $FF: renamed from: new int
- private int field_23;
- // $FF: renamed from: case int
- private int field_24;
- // $FF: renamed from: f java.lang.String
- private String field_25;
- // $FF: renamed from: long boolean
- private boolean field_26;
- // $FF: renamed from: r java.lang.String
- private String field_27;
- // $FF: renamed from: a boolean
- private boolean field_28;
- // $FF: renamed from: p int
- private int field_29;
- // $FF: renamed from: null java.lang.String[]
- private String[] field_30 = new String[16];
- // $FF: renamed from: do java.lang.String[]
- private String[] field_31 = new String[]{"Start Document", "End Document", "Start Tag", "End Tag", "Text"};
-
- // $FF: renamed from: case () int
- private final int method_0() throws IOException {
- int var1 = this.field_20;
- this.field_20 = this.field_21;
- if (this.field_20 == -1) {
- this.field_17 = true;
- return var1;
- } else {
- if (var1 == 10 || var1 == 13) {
- ++this.field_18;
- this.field_19 = 0;
- if (var1 == 13 && this.field_20 == 10) {
- var1 = 10;
- this.field_20 = 0;
- }
- }
-
- ++this.field_19;
- if (this.field_15 >= this.field_16) {
- this.field_16 = this.field_13.read(this.field_14, 0, this.field_14.length);
- if (this.field_16 <= 0) {
- this.field_21 = -1;
- return var1;
- }
-
- this.field_15 = 0;
- }
-
- this.field_21 = this.field_14[this.field_15++];
- return var1;
- }
- }
-
- // $FF: renamed from: a (java.lang.String) void
- private final void method_1(String var1) throws IOException {
- throw new IOException(var1 + " pos: " + this.method_15());
- }
-
- // $FF: renamed from: do (int) void
- private final void method_2(int var1) {
- if (var1 != 0) {
- if (this.field_23 == this.field_22.length) {
- char[] var2 = new char[this.field_23 * 4 / 3 + 4];
- System.arraycopy(this.field_22, 0, var2, 0, this.field_23);
- this.field_22 = var2;
- }
-
- this.field_22[this.field_23++] = (char)var1;
- }
- }
-
- // $FF: renamed from: a (char) void
- private final void method_3(char var1) throws IOException {
- if (this.method_0() != var1) {
- this.method_1("expected: '" + var1 + "'");
- }
-
- }
-
- // $FF: renamed from: goto () void
- private final void method_4() throws IOException {
- while(!this.field_17 && this.field_20 <= 32) {
- this.method_0();
- }
-
- }
-
- // $FF: renamed from: a (int) java.lang.String
- private final String method_5(int var1) {
- String var2 = new String(this.field_22, var1, this.field_23 - var1);
- this.field_23 = var1;
- return var2;
- }
-
- // $FF: renamed from: do () java.lang.String
- private final String method_6() throws IOException {
- int var1 = this.field_23;
- int var2 = this.field_20;
- if ((var2 < 97 || var2 > 122) && (var2 < 65 || var2 > 90) && var2 != 95 && var2 != 58) {
- this.method_1("name expected");
- }
-
- do {
- this.method_2(this.method_0());
- var2 = this.field_20;
- } while(var2 >= 97 && var2 <= 122 || var2 >= 65 && var2 <= 90 || var2 >= 48 && var2 <= 57 || var2 == 95 || var2 == 45 || var2 == 58 || var2 == 46);
-
- return this.method_5(var1);
- }
-
- // $FF: renamed from: a (boolean) void
- private final void method_7(boolean var1) throws IOException {
- String var2 = "";
- this.method_0();
- int var4 = this.method_0();
- byte var3;
- if (var4 == 63) {
- var3 = 63;
- } else if (var4 == 33) {
- if (this.field_20 == 45) {
- var2 = "--";
- var3 = 45;
- } else {
- var2 = "DOCTYPE";
- var3 = -1;
- }
- } else {
- if (var4 != 91) {
- this.method_1("cantreachme: " + var4);
- }
-
- var2 = "CDATA[";
- var3 = 93;
- }
-
- for(int var5 = 0; var5 < var2.length(); ++var5) {
- this.method_3(var2.charAt(var5));
- }
-
- if (var3 == -1) {
- this.method_8();
- } else {
- do {
- if (this.field_17) {
- this.method_1("Unexpected EOF");
- }
-
- var4 = this.method_0();
- if (var1) {
- this.method_2(var4);
- }
- } while(var3 != 63 && var4 != var3 || this.field_20 != var3 || this.field_21 != 62);
-
- this.method_0();
- this.method_0();
- if (var1 && var3 != 63) {
- this.method_5(this.field_23 - 1);
- }
- }
-
- }
-
- // $FF: renamed from: int () void
- private final void method_8() throws IOException {
- int var1 = 1;
-
- while(true) {
- int var2 = this.method_0();
- switch (var2) {
- case -1:
- this.method_1("Unexpected EOF");
- case 60:
- ++var1;
- break;
- case 62:
- --var1;
- if (var1 == 0) {
- return;
- }
- }
- }
- }
-
- // $FF: renamed from: a () void
- private final void method_9() throws IOException {
- this.method_0();
- this.method_0();
- this.field_27 = this.method_6();
- if (this.field_11 == 0) {
- this.method_1("element stack empty");
- }
-
- if (!this.field_27.equals(this.field_12[--this.field_11])) {
- this.method_1("expected: " + this.field_12[this.field_11]);
- }
-
- this.method_4();
- this.method_3('>');
- }
-
- // $FF: renamed from: else () int
- private final int method_10() {
- switch (this.field_20) {
- case -1:
- return 1;
- case 38:
- return 6;
- case 60:
- switch (this.field_21) {
- case 33:
- case 63:
- return 999;
- case 47:
- return 3;
- case 91:
- return 5;
- default:
- return 2;
- }
- default:
- return 4;
- }
- }
-
- // $FF: renamed from: a (java.lang.String[], int) java.lang.String[]
- private static final String[] method_11(String[] var0, int var1) {
- if (var0.length >= var1) {
- return var0;
- } else {
- String[] var2 = new String[var1 + 16];
- System.arraycopy(var0, 0, var2, 0, var0.length);
- return var2;
- }
- }
-
- // $FF: renamed from: if () void
- private final void method_12() throws IOException {
- this.method_0();
- this.field_27 = this.method_6();
- this.field_12 = method_11(this.field_12, this.field_11 + 1);
- this.field_12[this.field_11++] = this.field_27;
-
- while(true) {
- this.method_4();
- int var1 = this.field_20;
- if (var1 == 47) {
- this.field_28 = true;
- this.method_0();
- this.method_4();
- this.method_3('>');
- break;
- }
-
- if (var1 == 62) {
- this.method_0();
- break;
- }
-
- if (var1 == -1) {
- this.method_1("Unexpected EOF");
- }
-
- String var2 = this.method_6();
- if (var2.length() == 0) {
- this.method_1("attr name expected");
- }
-
- this.method_4();
- this.method_3('=');
- this.method_4();
- int var3 = this.method_0();
- if (var3 != 39 && var3 != 34) {
- if (!this.field_9) {
- this.method_1("<" + this.field_27 + ">: invalid delimiter: " + (char)var3);
- }
-
- var3 = 32;
- }
-
- int var4 = this.field_29++ << 1;
- this.field_30 = method_11(this.field_30, var4 + 4);
- this.field_30[var4++] = var2;
- int var5 = this.field_23;
- this.method_14(var3);
- this.field_30[var4] = this.method_5(var5);
- if (var3 != 32) {
- this.method_0();
- }
- }
-
- }
-
- // $FF: renamed from: byte () boolean
- public final boolean method_13() throws IOException {
- this.method_0();
- int var1 = this.field_23;
-
- while(!this.field_17 && this.field_20 != 59) {
- this.method_2(this.method_0());
- }
-
- String var2 = this.method_5(var1);
- this.method_0();
- if (var2.charAt(0) == '#') {
- int var7 = var2.charAt(1) == 'x' ? Integer.parseInt(var2.substring(2), 16) : Integer.parseInt(var2.substring(1));
- this.method_2(var7);
- return var7 <= 32;
- } else {
- String var3 = (String)this.field_10.get(var2);
- boolean var4 = true;
- if (var3 == null) {
- var3 = "&" + var2 + ";";
- }
-
- for(int var5 = 0; var5 < var3.length(); ++var5) {
- char var6 = var3.charAt(var5);
- if (var6 > ' ') {
- var4 = false;
- }
-
- this.method_2(var6);
- }
-
- return var4;
- }
- }
-
- // $FF: renamed from: if (int) boolean
- private final boolean method_14(int var1) throws IOException {
- boolean var2 = true;
-
- for(int var3 = this.field_20; !this.field_17 && var3 != var1 && (var1 != 32 || var3 > 32 && var3 != 62); var3 = this.field_20) {
- if (var3 == 38) {
- if (!this.method_13()) {
- var2 = false;
- }
- } else {
- if (var3 > 32) {
- var2 = false;
- }
-
- this.method_2(this.method_0());
- }
- }
-
- return var2;
- }
-
- public class_0(Reader var1) throws IOException {
- this.field_13 = var1;
- this.field_20 = var1.read();
- this.field_21 = var1.read();
- this.field_17 = this.field_20 == -1;
- this.field_10 = new Hashtable();
- this.field_10.put("amp", "&");
- this.field_10.put("apos", "'");
- this.field_10.put("gt", ">");
- this.field_10.put("lt", "<");
- this.field_10.put("quot", "\"");
- this.field_18 = 1;
- this.field_19 = 1;
- }
-
- // $FF: renamed from: long () java.lang.String
- public String method_15() {
- StringBuffer var1 = new StringBuffer(this.field_24 < this.field_31.length ? this.field_31[this.field_24] : "Other");
- var1.append(" @" + this.field_18 + ":" + this.field_19 + ": ");
- if (this.field_24 != 2 && this.field_24 != 3) {
- if (this.field_26) {
- var1.append("[whitespace]");
- } else {
- var1.append(this.method_17());
- }
- } else {
- var1.append('<');
- if (this.field_24 == 3) {
- var1.append('/');
- }
-
- var1.append(this.field_27);
- var1.append('>');
- }
-
- return var1.toString();
- }
-
- // $FF: renamed from: try () int
- public int method_16() {
- return this.field_19;
- }
-
- // $FF: renamed from: char () java.lang.String
- public String method_17() {
- if (this.field_25 == null) {
- this.field_25 = this.method_5(0);
- }
-
- return this.field_25;
- }
-
- // $FF: renamed from: for () java.lang.String
- public String method_18() {
- return this.field_27;
- }
-
- // $FF: renamed from: if (java.lang.String) java.lang.String
- public String method_19(String var1) {
- for(int var2 = (this.field_29 << 1) - 2; var2 >= 0; var2 -= 2) {
- if (this.field_30[var2].equals(var1)) {
- return this.field_30[var2 + 1];
- }
- }
-
- return null;
- }
-
- // $FF: renamed from: new () int
- public int method_20() throws IOException {
- if (this.field_28) {
- this.field_24 = 3;
- this.field_28 = false;
- --this.field_11;
- return this.field_24;
- } else {
- this.field_23 = 0;
- this.field_26 = true;
-
- do {
- this.field_29 = 0;
- this.field_27 = null;
- this.field_25 = null;
- this.field_24 = this.method_10();
- switch (this.field_24) {
- case 1:
- break;
- case 2:
- this.method_12();
- break;
- case 3:
- this.method_9();
- break;
- case 4:
- this.field_26 &= this.method_14(60);
- break;
- case 5:
- this.method_7(true);
- this.field_26 = false;
- this.field_24 = 4;
- break;
- case 6:
- this.field_26 &= this.method_13();
- this.field_24 = 4;
- break;
- default:
- this.method_7(false);
- }
- } while(this.field_24 > 4 || this.field_24 == 4 && this.method_10() >= 4);
-
- this.field_26 &= this.field_24 == 4;
- return this.field_24;
- }
- }
- }
-